﻿/**
 * Create in 2012-4-4.
 */
package kit4j.common.task.event;

import kit4j.common.task.Task;
import kit4j.common.task.TaskState;

/**
 * 指示任务状态发生变化的事件。
 * 
 * @author MiniKnife
 *
 */
public class TaskStateChangeEvent extends TaskEvent {
	
	private static final long serialVersionUID = 1L;

	/**
	 * 任务之前的状态。
	 */
	private TaskState oldTaskState;
	
	/**
	 * 任务当前的状态。
	 */
	private TaskState newTaskState;

	/**
	 * 创建一个任务状态变化事件对象。
	 * @param task 发生变化的任务对象
	 * @param oldState 任务之前的状态
	 * @param newState 任务当前的状态
	 */
	public TaskStateChangeEvent(Task task, TaskState oldState, TaskState newState) {
		super(task);
		
		this.oldTaskState = oldState;
		this.newTaskState = newState;
	}

	/**
	 * @return 任务之前的状态
	 */
	public TaskState getOldTaskState() {
		return oldTaskState;
	}

	/**
	 * @return 任务当前的状态
	 */
	public TaskState getNewTaskState() {
		return newTaskState;
	}
	

}
